package com.taikang.auth.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.taikang.auth.entity.Depart;
import com.taikang.auth.entity.UserDepart;

/**
 * 用户部门中间表
 * @creator     拓者码工
 * @create-time 2016/2/15 13:31:20
 * @email developer@taikang.com
 * @company www.taikang.com
 * @version 1.0
 */
@Repository("userDepartDaoImpl")
public interface IUserDepartDao {
	
	/**
	 * 根据用户ID查询部门
	 * @param userId
	 * @return
	 */
	List<Depart> listDepartByUserId(@Param("userId") String userId);

	/**
	 * 根据部门ID获取用户数量
	 * @param departId
	 * @return
	 */
	int getUserCountByDepartId(@Param("departId") String departId);

	/**
	 * 新增
	 * @param item 用户部门中间表
	 */
	void add(UserDepart item);

	/**
	 * 根据用户ID集合批量删除
	 * @param userId 用户ID
	 */
	void delByUserId(@Param("userId") String userId);
	
	/**
	 * 根据用户ID和部门ID删除
	 * @param userId 用户ID
	 */
	void delByUserIdAndDepartId(@Param("userId") String userId, @Param("departId") String departId);
	
	/**
	 * 修改主管
	 * @param item
	 */
	void updateManager(UserDepart item);
	
}